//Copyright 2011 - Jonathan Allen

using System;
using System.Collections.Generic;
using System.Linq;

namespace Granite.ComponentModel
{
	/// <summary>
	/// Describes the action that caused a INotifyCollectionChanged.DictionaryChanged event.
	/// </summary>
	[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1027:MarkEnumsWithFlags")]
	public enum NotifyDictionaryChangedAction
	{
		/// <summary>
		/// One or more items were added to the dictionary.
		/// </summary>
		Add = 0,

		/// <summary>
		///     One or more items were removed from the dictionary.
		/// </summary>
		Remove = 1,

		/// <summary>
		///     One or more items were replaced in the dictionary.
		/// </summary>
		Replace = 2,

		/// <summary>
		///     The content of the dictionary changed dramatically.
		/// </summary>
		Reset = 4,
	}
}
